# 导入flask类
# render_template 从 jinjia2的库自动带的
from flask import Flask, request, render_template
from datetime import datetime

app = Flask(__name__)


class User:
    def __init__(self, username, email):
        self.username = username
        self.email = email


# 创建路由,返回页面渲染函数
@app.route("/")
def index():
    # 会自动的在template里边找一个叫index.html的函数
    return "<h1>我是h1标签</h1>"


@app.route("/blog_detail/<id>")
def blog_detail(id):
    # 会自动的在template里边找一个叫index.html的函数
    return render_template("blog_detail.html", blog_id=id, user="用户名")


@app.route("/user")
def user():
    user = User(username="张三", email="123@qq.com")
    person = {
        "username": "李四",
        "email": "666@qq.com"
    }
    # 会自动的在template里边找一个叫index.html的函数
    return render_template("user.html", person=person, user=user)


@app.route("/filter")
def filter():
    user = User(username="张三", email="123@qq.com")

    person = {
        "username": "李四",
        "email": "666@qq.com",
        "time": datetime.now()
    }
    # 会自动的在template里边找一个叫index.html的函数
    return render_template("filter.html", person=person, user=user)


# 自定义过滤器
def datetime_format(value, format="%Y年%m月%d日 %H:%m"):
    return value.strftime(format)


app.add_template_filter(datetime_format, "dformat")

if __name__ == '__main__':
    # debug=True, 开启bug模模式,修改代码数据重新加载,热部署
    # 修改端口,8888
    # 修改host,监听主机名,0.0.0.0 通过ip地址就可以让其他的电脑访问项目
    app.run(host='0.0.0.0', port=5000, debug=True)
